//package com.sybkl.bigdatastudentmybatisplus.utils;
//
//import com.baomidou.mybatisplus.generator.FastAutoGenerator;
//import com.baomidou.mybatisplus.generator.config.OutputFile;
//import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
//import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
//
//import java.sql.Types;
//import java.util.Collections;
//
//public class CodeGenerator {
//    public static void main(String[] args) {
//
//        generate();
//    }
//
//    private static void generate() {
//        FastAutoGenerator.create("jdbc:mysql://localhost:3306/bigdata_student?useSSL=false&characterEncoding=UTF-8&useUnicode=true", "root", "passwd")
//                .globalConfig(builder -> {
//                    builder.author("山渐青") // 设置作者
//                            .enableSwagger() // 开启 swagger 模式
//                            .fileOverride() // 覆盖已生成文件
//                            .outputDir("D:\\jmi\\IdeaProject\\Project2023\\202304\\BigDataStudentMyBatisPlus\\src\\main\\java\\"); // 指定输出目录
//                })
//                .dataSourceConfig(builder -> builder.typeConvertHandler((globalConfig, typeRegistry, metaInfo) -> {
//                    int typeCode = metaInfo.getJdbcType().TYPE_CODE;
//                    if (typeCode == Types.SMALLINT) {
//                        // 自定义类型转换
//                        return DbColumnType.INTEGER;
//                    }
//                    return typeRegistry.getColumnType(metaInfo);
//
//                }))
//                .packageConfig(builder -> {
//                    builder.parent("com.sybkl.bigdatastudentmybatisplus") // 设置父包名
//                            .moduleName("system") // 设置父包模块名
//                            .pathInfo(Collections.singletonMap(OutputFile.xml, "D:\\jmi\\IdeaProject\\Project2023\\202304\\BigDataStudentMyBatisPlus\\src\\main\\java\\com\\sybkl\\bigdatastudentmybatisplus\\mapper")); // 设置mapperXml生成路径
//                })
//                .strategyConfig(builder -> {
//                    builder.addInclude("user", "student_award", "student_list", "student_subject_details", "student_score_details") // 设置需要生成的表名
//                            .addTablePrefix("t_", "student_"); // 设置过滤表前缀
//                })
////                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板，默认的是Velocity引擎模板
//                .execute();
//    }
//
//}
